//首字母大写
//第一种方法：使用内置Capitalize，直接可以让首字母大写
type CapitalizeString<T>=T extends string ?  Capitalize<T & string>: T
//第二种方法：
//针对字符的infer，第一个infer织带字符的第一个，后面的就是所有的
//如果有分隔符就是指代分隔符之前的
// type CapitalizeString<T>=T  extends `${infer L}${infer R}` ? `${Capitalize<L>}${R}` : T
type a1=CapitalizeString<'handle'>//Handle
type a2=CapitalizeString<'dev'>//Dev
type a3=CapitalizeString<'a'>//A
type a4=CapitalizeString<233>//233